package com.zzyl.controller.customer;

import com.zzyl.base.ResponseResult;
import com.zzyl.controller.BaseController;
import com.zzyl.dto.CustomerLoginDto;
import com.zzyl.service.CustomerLoginService;
import com.zzyl.service.WecharService;
import com.zzyl.vo.LoginVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/customer/user")
public class CustomerLoginController extends BaseController {

    @Autowired
    private CustomerLoginService customerLoginService;

    /**
     * 处理用户登录请求。
     *
     * @param dto 用户登录时传递的客户信息数据传输对象，包含登录必要的信息如用户名和密码。
     * @return 返回一个登录响应结果，其中包含登录成功后的一些用户信息。
     */
    @PostMapping("/login")
    public ResponseResult<LoginVo> login(@RequestBody CustomerLoginDto dto){
        // 通过服务层处理登录逻辑，并获取登录成功后的用户信息
        LoginVo loginVo = customerLoginService.login(dto);
        // 构建并返回一个登录成功的响应结果
        return success(loginVo);
    }
}
